package com.kitom.qqmap.bean.search;

import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * 圆形搜索
 * <pre>
 *  腾讯地图地点搜索响应对象
 * </pre>
 * @author <a href="https://gitee.com/kitom">ki_tom</a>
 * @since 2021-01-12
 */
@NoArgsConstructor
@Data
public class QQmapSearchResult {
    /**
     * 状态码
     * <pre>
     * 是否必填：是
     * 0为正常，其它为异常，详细请参阅状态码说明
     * </pre>
     */
    private Integer status;
    /**
     * 状态说明
     */
    private String message;
    /**
     * 本次搜索结果总数
     * <pre>
     * 是否必填：是
     * 另外本服务限制最多返回200条数据(data)，
     * 翻页（page_index）超过搜索结果总数 或 最大200条限制时，将返回最后一页数据。
     * </pre>
     */
    private Integer count;
    /**
     * 本次请求的唯一标识
     * <pre>
     * 是否必填：是
     *  由系统自动生成，用于追查结果有异常时使用
     * </pre>
     */
    private String request_id;
    /**
     * 搜索结果POI（地点）数组
     * <pre>
     * 每项为一个POI（地点）对象
     * </pre>
     */
    private List<Data> data;
    /**
     * 区域信息：中国
     */
    private Region region;

    @NoArgsConstructor
    @lombok.Data
    public static class Region {
        private String title;
    }

    @NoArgsConstructor
    @lombok.Data
    public static class Data {
        private String id;
        private String title;
        private String address;
        private String tel;
        private String category;
        private Integer type;
        private Location location;
        private Double _distance;
        private AdInfo ad_info;

        @NoArgsConstructor
        @lombok.Data
        public static class Location {
            private Double lat;
            private Double lng;
        }

        @NoArgsConstructor
        @lombok.Data
        public static class AdInfo {
            private Integer adcode;
            private String province;
            private String city;
            private String district;
        }
    }
}
